fastrpc-test: Add runtime validation and remove SoC-based filtering - #532
fastrpc-test: Add runtime validation and remove SoC-based filtering#532anankulk wants to merge 1 commit into
Conversation
Srikanth Muppandam (smuppand)
left a comment
There was a problem hiding this comment.
only_hap_example_failed() now has no callers and still documents the SM8850 exception being removed. Remove the function and obsolete comment in this PR.
|
|
||
| case "$SOC_MACHINE" in | ||
| *QRB2210*|*"Glymur CRD"*) |
There was a problem hiding this comment.
QRB2210 and Glymur now reach generic discovery, but discover_supported_domains() checks remoteproc/DT presence—not whether the corresponding FastRPC endpoint, libraries, and skeletons are usable. Runtime-layout discovery merely warns when artifacts are absent.
| # Do not skip Glymur CRD by SoC name. Newer Glymur/Debian images expose | ||
| # ADSP/CDSP remoteproc instances and FastRPC skeletons, so runtime discovery | ||
| # should decide whether the test can run. | ||
| soc_skip_all=0 |
There was a problem hiding this comment.
soc_skip_all is initialized to 0 but can no longer become 1.Remove soc_skip_all and its block at lines 251–255 rename the section to describe the remaining GPDSP filter.
|
Hi Srikanth Muppandam (@smuppand), With the upcoming tag to be released for fastrpc recipe : we are enabling gpdsp test support as-well. |
Enable FastRPC testing on QRB2210 and Glymur CRD by removing the hardcoded SoC-level skip. Remove the SoC-specific GPDSP0/GPDSP1 blacklist for QCS9075, QCS8275, QCS8300, and QCS9100; GPDSP availability is now determined entirely through runtime discovery. Add validation of FastRPC system library, DSP skeleton, and /dev/fastrpc-<domain> endpoint availability before test execution. Domains or configurations that are not usable are skipped early with a clear message instead of being invoked and failing. Remove the SM8850 libhap_example HAP_mem DMA exception (only_hap_example_failed) so results are reported consistently across all targets. Signed-off-by: Anand Kulkarni <anankulk@qti.qualcomm.com>
2adfe81 to
d8a040c
Compare
There was a problem hiding this comment.
With these new changes, you have to fix the following code as well.
Runner/utils/lib_fastrpc.sh:151 — artifact discovery validates generic directories, not FastRPC artifacts
-
Issue: FASTRPC_RESOLVED_LIB_SYS_DIR becomes /usr/lib whenever that directory exists. Likewise, the runner checks FASTRPC_RESOLVED_SKEL_BASE,
although the base can exist without either v75 or v68. FASTRPC_RESOLVED_LIB_TEST_DIR is discovered but never required. -
Recommended fix: Resolve and validate the actual required library files, require a non-empty FASTRPC_RESOLVED_SKEL_PATH, and validate the required
test-library artifacts rather than generic directories.
Runner/suites/Multimedia/CDSP/fastrpc_test/fastrpc_test.yaml:11 — YAML still documents removed GPDSP filtering
- Issue: The description says GPDSP domains are skipped on QCS9075/QCS8275/QCS8300/QCS9100, while the PR removes that blacklist.
- Recommended fix: Describe runtime domain and endpoint discovery instead.
Runner/suites/Multimedia/CDSP/fastrpc_test/run.sh:188 — remove unused SOC_MACHINE
- Recommended fix: Remove the assignment.
|
|
||
| if [ "$soc_skip_all" -eq 1 ]; then | ||
| log_skip "$TESTNAME SKIP - SoC $SOC_MACHINE does not support FastRPC" | ||
| if [ -z "$available_domains" ]; then |
There was a problem hiding this comment.
A domain supplied through --domain, --domain-name, or single-domain configuration is filtered out when its /dev/fastrpc-* endpoint is absent, and an empty set produces SKIP.
I recommend, Preserve selection provenance. No automatically discovered applicable domain may remain a SKIP, but a missing endpoint for an explicitly selected domain should be FAIL with endpoint and remoteproc diagnostics.
Summary
Replace hardcoded SoC-specific FastRPC test filtering with runtime
validation of actual test prerequisites.
hardcoded SoC-level skip.
and QCS9100. GPDSP availability is now determined entirely through
runtime discovery.
/dev/fastrpc-<domain>endpoint availability before execution.Domains or configurations that are not usable are skipped early
with a clear message instead of being invoked and failing.
libhap_exampleHAP_mem DMA exception(
only_hap_example_failed) so results are reported consistentlyacross all targets.
Files changed
Runner/suites/Multimedia/CDSP/fastrpc_test/run.shRunner/utils/lib_fastrpc.sh